<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>

    <script>
        /*
            匿名函数(没有名字的函数)
            匿名函数可以赋值给一个变量
            表达方式声明函数

            使用:  变量名(参数1，参数2，...)
        */

        var say=function()
        {
            console.log("这是一个匿名函数");
        }
        console.log(typeof say);
        say();


        //回调  函数作为另外一个函数参数
        var fun=function(a,b)  //匿名函数
        {
            return a+b;
        }

        function out(outype,hs)  //匿名函数作为一个参数
        {
            var re=hs(10,20)    //创建一个变量来接收匿名函数
            switch(outype)
            {
                case 'console':
                    console.log(re);
                    break;
                case 'page':
                    document.write(re+"<br/>")
                    break;
                default:
                    alert(re)
            }
        }
        out("page",fun) 
        
        out("page",function(a,b){return a+b*2;})//也可以写在输出内



        //相当于
        var fun1=function()
        {
            console.log("这是匿名函数");
        }
        function fun2(hs)
        {
            hs();
        }
       fun2(fun1)
        
        
    </script>
</head>
<body>
    
</body>
</html>